(function() {
    checkbox = {
        init: function() {
            this.bindEvent();
        },
        logic: {
            //全选或者取消全选
            selectAllCheckbox : function(event){
                var _this = $(event.target);
                var checked = $(_this).prop("checked");
                if(checked){
                    _this.closest("table").find(".select-single-js").prop("checked", true);
                }else{
                    _this.closest("table").find(".select-single-js").prop("checked", false);
                }
            },

            //全选后  取消或者重新选中其中一个Checkbox
            selectSingleCheckbox : function(event){
                var _this = $(event.target);
                var checked = $(_this).prop("checked");
                var checkboxCount = _this.closest("table").find(".select-single-js").length;
                var checkedCount = _this.closest("table").find(".select-single-js:checked").length;

                if(!checked){
                    _this.closest("table").find(".select-all-js").prop("checked",false);
                }else if(checkboxCount == checkedCount){
                    _this.closest("table").find(".select-all-js").prop("checked",true);
                }
            }

        },
        bindEvent: function() {
            $("body").on("click", ".select-all-js", this.logic.selectAllCheckbox);
            $("body").on("click", ".select-single-js", this.logic.selectSingleCheckbox);
        },


        //返回所有选中的checkbox的id数组idArr;使用idArr.toString()的得到使用逗号分割的string --> "1,2,3"
        getCheckedboxIds : function(obj){
            var idArr = new Array();
            $(obj).find(".select-single-js").each(function(){
                if($(this).prop("checked")){
                    idArr.push($(this).closest("tr").attr("id"));
                }
            });
            return idArr;
        }

    };

    $(function(){
        checkbox.init();
    });
})();